var express = require('express')
var fs = require('fs')
var path = require('path')
var jwt= require('jsonwebtoken')
//创建子路由对象
var oneRouter = express.Router()

//分页
oneRouter.get('/list', (req, res) => {
    var { page, count } = req.query

    var filepath = path.join(__dirname, '../json/urls.json')
    var arr = fs.readFileSync(filepath)
    //转为字符串
    arr = arr.toString() ? JSON.parse(arr) : []
    var newarr = arr.slice((page - 1) * count, page * count)
    res.send({ code: 200, msg: '请求成功', list: newarr })
})
//模糊查询
oneRouter.get('/search', (req, res) => {
    var { searchkey } = req.query
    var filepath = path.join(__dirname, '../json/urls.json')
    var arr = fs.readFileSync(filepath)
    //转为字符串
    arr = arr.toString() ? JSON.parse(arr) : []
    var newarr = arr.filter((item) => {
        return new RegExp(searchkey).test(item.name)
    })
    res.send({ code: 200, msg: '请求成功', list: newarr })
})

//登陆
oneRouter.post('/login', (req, res) => {
    var { phone, pass } = req.body
    var filepath = path.join(__dirname, '../json/urls.json')
    var arr = fs.readFileSync(filepath)
    //转为字符串
    arr = arr.toString() ? JSON.parse(arr) : []

    var i = arr.findIndex((item) => {
        return item.phone == phone && item.pass == pass
    })
    if (i != -1) {

       var token=  jwt.sign({phone},"1234",{algorithm:'HS256',expiresIn:60})

        res.send({ code: 200, msg: '登陆成功', token })
    } else {
        res.send({ code: 400, msg: '登陆失败' })

    }


})
//注册
oneRouter.post('/register', (req, res) => {
    var { phone } = req.body;

    var filepath = path.join(__dirname, '../json/urls.json')
    var arr = fs.readFileSync(filepath)
    //转为字符串
    arr = arr.toString() ? JSON.parse(arr) : []

    var i = arr.findIndex((item) => {
        return item.phone == phone
    })
    if (i != -1) {
        res.send({ code: 400, msg: '注册失败' })
    } else {
        arr.push({ ...req.body, ingroup: '编辑组', isadmin: true, status: true })
        fs.writeFileSync(filepath, JSON.stringify(arr), 'utf8')
        res.send({ code: 200, msg: '注册成功' })
    }

})
//删除
oneRouter.post('/delete', (req, res) => {
    var { phone } = req.body;
    var filepath = path.join(__dirname, '../json/urls.json')
    var arr = fs.readFileSync(filepath)
    //转为字符串
    arr = arr.toString() ? JSON.parse(arr) : []

    var i = arr.findIndex((item) => {
        return item.phone == phone
    })
    if (i != -1) {
        arr.splice(i, 1)
        fs.writeFileSync(filepath, JSON.stringify(arr), 'utf8')
        var newarr = arr.slice(0, 2)
        res.send({ code: 200, msg: '删除成功', list: newarr })
    } else {
        res.send({ code: 400, msg: '删除失败' })
    }

})
module.exports = oneRouter;
